package com.service.impl;

import com.entity.ProdType;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.mapper.ProdTypeMapper;
import com.service.ProdTypeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.utils.PageObject;
import com.vo.OrdersVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author aiou
 * @since 2025-06-12
 */
@Service
public class ProdTypeServiceImpl implements ProdTypeService {

    @Autowired
    ProdTypeMapper prodTypeMapper;

    //品种类别：分页查询
    @Override
    public PageObject<ProdType> list(PageObject pageObject) {
        //开始分页
        PageHelper.startPage(pageObject.getCurrent(),pageObject.getSize());
        //查询数据
        List<ProdType> list = prodTypeMapper.list();
        //PageHelper包装数据
        PageInfo<ProdType> pageInfo = new PageInfo<>(list);
        //将数据封装进PageResult
        PageObject<ProdType> prodTypePageResult
                = new PageObject<>(pageInfo.getPageNum(), pageInfo.getPageSize(), pageInfo.getTotal(), pageInfo.getList());
        return prodTypePageResult;
    }

    //品种类别：新增/修改-根据编码查询
    @Override
    public ProdType getOne(String prodTypeCode) {
        return prodTypeMapper.getOne(prodTypeCode);
    }

    //品种类别：新增
    @Override
    public boolean save(ProdType prodType) {
        return prodTypeMapper.save(prodType);
    }

    //品种类别：修改
    @Override
    public boolean updateById(ProdType prodType) {
        return prodTypeMapper.update(prodType);
    }

    //品种类别：删除
    @Override
    public boolean removeById(Integer id) {
        return prodTypeMapper.delete(id);
    }

    //品种类别：查询所有
    @Override
    public List<ProdType> list() {
        return prodTypeMapper.list();
    }
}
